package com.ruoyi.common.core.domain.business.waterDistribution;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import org.apache.poi.hpsf.Decimal;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;

/**
 * 年度作物灌溉周期对象 wi_period_y
 * 
 * @author ps
 * @date 2023-02-16
 */
public class WiPeriodY extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 种植年度 */
    @NotBlank (message = "计收年度不能为空！")
    @Excel(name = "年份",sort = 1)
    private String cropYr;

    /** 种植代码 */
//    @Excel(name = "作物代码" )
    private String plantCd;

    /** 灌溉第次 */
    private Long periodNum;

    /** 起始日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "起始日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date beginDate;

    /** 结束日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "结束日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endDate;

    /** 灌溉水量 */
    @Excel(name = "灌溉水量")
    private BigDecimal periodVol;

    /** 备注 */
    @Excel(name = "备注")
    private String periodMark;

    public void setCropYr(String cropYr) 
    {
        this.cropYr = cropYr;
    }

    public String getCropYr() 
    {
        return cropYr;
    }
    public void setPlantCd(String plantCd) 
    {
        this.plantCd = plantCd;
    }

    public String getPlantCd() 
    {
        return plantCd;
    }
    public void setPeriodNum(Long periodNum) 
    {
        this.periodNum = periodNum;
    }

    public Long getPeriodNum() 
    {
        return periodNum;
    }
    public void setBeginDate(Date beginDate) 
    {
        this.beginDate = beginDate;
    }

    public Date getBeginDate() 
    {
        return beginDate;
    }
    public void setEndDate(Date endDate) 
    {
        this.endDate = endDate;
    }

    public Date getEndDate() 
    {
        return endDate;
    }
    public void setPeriodVol(BigDecimal periodVol)
    {
        this.periodVol = periodVol;
    }

    public BigDecimal getPeriodVol()
    {
        return periodVol;
    }
    public void setPeriodMark(String periodMark) 
    {
        this.periodMark = periodMark;
    }

    public String getPeriodMark() 
    {
        return periodMark;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("cropYr", getCropYr())
            .append("plantCd", getPlantCd())
            .append("periodNum", getPeriodNum())
            .append("beginDate", getBeginDate())
            .append("endDate", getEndDate())
            .append("periodVol", getPeriodVol())
            .append("periodMark", getPeriodMark())
            .toString();
    }
}
